Feat: Beefy plugin and Vault interface#242
Open
iguigui wants to merge 7 commits intoEmberAGI:mainfrom
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
🔧 Beefy Vault Plugin: Complete Vault Interface Implementation
Comprehensive Beefy Finance vault plugin for Arbitrum Vibekit that enables AI agents to interact with yield optimization vaults through a dedicated vault interface. Features automated vault discovery, deposit/withdrawal operations, and real-time vault data queries. Integrates directly with Beefy's production API to access live APY, TVL, and fee data across 3,759+ vaults. View docs for beefy API: https://docs.beefy.finance/developer-documentation/beefy-api
New Vault Interface System:
Actions:
vault-deposit: Deposit underlying tokens into Beefy vaults → receive mooTokensvault-withdraw: Redeem mooTokens → receive underlying tokensQueries:
getVaults: All vault configurations and metadata for chain filteringgetVaultPerformance: Individual vault performance metricsgetUserVaultPositions: User's active vault positions and balancesgetVaultStrategies: Available vault strategies and configurationsgetVaultBoosts: Vault boost opportunities and multipliersgetApyData: Real-time APY data for all vaultsgetTvlData: Total value locked across all vaultsgetApyBreakdownData: Detailed yield breakdown with fee structuresgetFeesData: Performance and withdrawal fee informationType of Change:
🧪 Testing
Current Implementation Status: ✅ COMPLETED - Plugin fully implemented with comprehensive vault interface and live API integration
Modern Vitest Test Suite (All Passing ✅):
api-integration.vitest.ts - Real API Integration Tests:
vault-interface.vitest.ts - Vault Interface Tests:
type: 'vaults'vault-deposit,vault-withdraw) properly definedLive API Integration Results:
Production Data Validation:
https://api.beefy.finance(live production)Real Transaction Generation:
Architecture Validation:
Vault Interface System:
core/schemas/vaults.tscore/actions/vaults.tscore/queries/vaults.tslib/ember-schemas/src/vaults.tstype: 'vaults'instead of lendingTest Coverage Metrics:
Currently Working Features ✅:
Checklist:
pnpm build)pnpm lint:check)pnpm test)anytypes introducedDocumentation:
Agent/MCP Specific (if applicable):
Deployment Notes
Deployment Considerations:
New or Changed Environment Variables:
ARBITRUM_RPC_URLfor custom RPC endpointBreaking Changes or Migration Steps:
New Dependencies Added:
Additional Context
Technical Architecture:
Production Readiness: